iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
0

根據測試結果 Learned Index 的測試結果是優於 B-Tree,從前面實驗結果可以看到,不論是哪種分布的資料,

B-Tree 都遠不及阿~

但是 !

並不是每種情況 Learned Index 都比較優,而是某種特殊情況,甚麼特殊情況呢 ?

Learned Index 是學習固定、既有的資料,換句話說,Learned Index 只能對已知的資料進行學習

當有新的資料插入時,Learned Index 就必須重新訓練,來擬合新的資料分布。

所以其實想一想, Learned Index 之所以能獲勝,因為測試只針對固定的資料進行測試阿 ! 而且測試項目只有查詢效能、空間成本,那刪除或插入呢 ?

Kraska et al. 在測試前就有說,他們不把訓練時間算進時間成本裡面,因此,如果要比插入、更新資料,B-Tree反而會比較優,因為B-Tree的查詢、插入、刪除、更新都在固定的時間複雜度以內 !

因此我們可以歸納出一個表格 :

B-Tree Learned Index
Search Performance V
Memory Space V
Insert Performance V
Flexibility V

對於固定的資料,選擇 Learned Index最佳,不論是查詢效能還是記憶體空間效能都比較優,但是如果考慮新資料的插入以及索引的靈活度,反而選擇 B-Tree 會比較佳 !


上一篇
Day 17 - Results(2)
下一篇
Day 19 - 環境設定
系列文
索引結構與機器學習的相遇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言